Architectural patterns for Parallel Programming : models for performance estimation
نویسنده
چکیده
Parallel Programming relies on the coordination of computing resources, so that they simultaneously work towards a common objective. Achieving this requires extra effort from the software designer, because of the increased complexity involved. Furthermore, as Parallel Programming is considered a means to improve performance, the software designer has to consider sophisticated and cost-effective practices and techniques for performance measurement and analysis. In particular, it is of great interest to obtain per formance information during design stages and before implementation, since this enables the software developer to select the organisation of computations and communications between components. The Architectural Performance Modelling Method is presented as a criteria for selecting the organisation of a parallel program based on estimating its probable per formance. By considering a parallel program as an instance of a software architecture, it can be described in terms of interacting software components. Such components can be classified depending on their particular objective and their rate of change, for example, as components associated with the hardware and software environment (or Platform), components representing the fundamental structural organisation for execution and com munication (or Coordination), and so on. The performance of a parallel program can be estimated as the result of the contribution of each one of those kinds of components. An Architectural Performance Model is based on selecting from the Architectural Patterns for Parallel Programming (descriptions of coodinations commonly used in Par allel Programming), a component simulator (representing a simulation of a processing component’s behaviour), and a performance analysis of parallel applications (in which the information on system performance is examined). Parallel programs simulated using the Architectural Performance Modelling Method range from a complete parallel pro gram to a partially implemented program design. The simulation of parallel systems, using the information about the problem to be solved, the available resources, and archi tectural patterns describing overall coordinations of the parallel programs, makes it pos sible to identify the best performing architectural solution for the system being built.
منابع مشابه
Architectural Performance Models Estirnating the Contribution of Software Structure to the Perfonnance of a Parallel Software Architecture
Parallel System programming requires sophisticated and cost-effective perfonnance estimation techniques for successful development. Architectural Perfonnance Models. based on Architectural patterns, a component simulator and a perfonnance analysis. are presented here as an approach to estirnating the perfonnance of parallel applications. by obtaining the contribution to performance from their S...
متن کاملImplementation of the direction of arrival estimation algorithms by means of GPU-parallel processing in the Kuda environment (Research Article)
Direction-of-arrival (DOA) estimation of audio signals is critical in different areas, including electronic war, sonar, etc. The beamforming methods like Minimum Variance Distortionless Response (MVDR), Delay-and-Sum (DAS), and subspace-based Multiple Signal Classification (MUSIC) are the most known DOA estimation techniques. The mentioned methods have high computational complexity. Hence using...
متن کاملImprovement of Gene Expression Programming Model Performance using Wavelet Transform for the Estimation of Long-Term Rainfall in Rasht City
Rainfall may be considered as the most important source of drinking water and watering land in different areas all over the world. Therefore, simulation and estimation of the hydrological phenomenon is of paramount importance. In this study, for the first time, the long-term rainfall in Rasht city was simulated using an optimum hybrid artificial intelligence (AI) model over a 62 year period fro...
متن کاملApplying Architectural Patterns for Parallel Programming: Solving the One-dimensional Heat Equation
The Architectural Patterns for Parallel Programming is a collection of patterns related with a method for developing the coordination of parallel software systems. These architectural patterns take as input information (a) the available parallel hardware platform, (b) the parallel programming language of this platform, and (c) the analysis of the problem to solve, in terms of an algorithm and d...
متن کاملArchitectural Patterns for Parallel Programming
This paper introduces an approach for describing and selecting architectural patterns for parallel programming, according to the requirements of order of data and computations of the problem and the nature of their processing components, using pattern descriptions.
متن کامل